package com.lntu.meeting.mapper;

import com.lntu.meeting.pojo.MeetingRoom;
import com.lntu.meeting.pojo.Notes;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

@Mapper
public interface ManageMapper {
    /**
     * 管理员查询所有会议室预定信息
     * @return
     */
    public List<Notes> findAll(Map<String,Object> map);
    /*public List<Notes> findAll(@Param("startDate") Date startDate,@Param("page") Integer page,@Param("size") Integer size);*/

    /**
     * 管理员根据用户id或会议开始、结束时间查询会议室预定信息
     * @return
     */
   public List<Notes> find(Integer userid,Integer starttime,Integer endtime);

    /**
     * 管理员通过申请id批准预定信息
     * 返回修改语句条数判断是否执行成功
     */
   public Integer applyById(Integer id);

    /**
     * 管理员根据修改修改申请信息
     * 返回修改语句条数判断是否执行成功
     * @param id
     */
   public Integer updateById(Integer id);

    /**
     * 用户删除自己的会议室申请
     * 返回修改语句条数判断是否执行成功
     */
   public Integer delete(Integer id);

    /**
     * 根据会议室申请id查询用户userid
     * @return
     */
   public Integer findUseridByid(Integer id);

    /**
     * 会议室申请列表，日期
     */

    /**
     * 管理员查询所有会议室预定信息（分页数据数量）
     */
    public Integer count();

    /**
     * 查询当前所有会议室
     */
    public List<MeetingRoom> getAllRoom();
}
